﻿using BCAMap.AMap.Dto;
using BCAMap.Dto;

namespace BCAMap.AMap
{
    /// <summary>
    /// 高德地图工具
    /// </summary>
    public interface IAMapUtils
    {
        /// <summary>
        /// 距离测量
        /// </summary>
        /// <param name="distanceRequestDto">距离测量请求对象</param>
        /// <returns></returns>
        DistanceResponseDto GetDistance(DistanceRequestDto distanceRequestDto);
        /// <summary>
        /// 地理位置逆编码
        /// </summary>
        /// <param name="locationRequestDto">地理位置逆编码请求对象</param>
        /// <returns></returns>
        LocationResponseDto GetLocation(LocationRequestDto locationRequestDto);
        /// <summary>
        /// 地理区域查询
        /// </summary>
        /// <param name="geographyRequestDto">行政区域请求数据模型</param>
        /// <returns></returns>
        GeographyResponseDto GetGeography(GeographyRequestDto geographyRequestDto);

        /// <summary>
        /// 电动车路线规划
        /// </summary>
        /// <param name="directionRequestDto"></param>
        /// <returns></returns>
        DirectionResponseDto GetDirection(DirectionRequestDto directionRequestDto);
        /// <summary>
        /// 驾车路线规划
        /// </summary>
        /// <param name="directionRequestDto"></param>
        /// <returns></returns>
        DirectionResponseDto GetDirectionDriving(DirectionDrivingRequestDto directionRequestDto);
    }
}
